1. Field of Invention
The invention relates to Satellite Positioning System (SPS) receivers, and in particular to increasing the accuracy of SPS receivers by providing the receivers with information to correct for the frequency offset between the oscillators of the receivers and those of the satellites.
2. Related Art
Satellite Positioning System (SPS) receivers, such as Global Positioning System (GPS), also known as NAVSTAR, receivers, receive radio transmissions from satellite-based radio navigation systems and use those received transmissions to determine the location of the SPS receiver. The location of the SPS receiver may be determined by applying the well-known concept of intersection if the distances from the SPS receiver to three SPS satellites having known satellite locations.
Generally, each satellite in a satellite-based radio navigation system broadcasts a radio transmission, that contains its location information, and orbit information. More specifically, each of the orbiting satellites in the GPS system contains four highly accurate atomic clocks: two Cesium and two Rubidium. These clocks provide precision timing pulses used to generate two unique binary codes (also known as a pseudo random noise “PRN,” or pseudo noise “PN” code) that are transmitted to earth. The PN codes identify the specific satellite in the constellation. The satellite also transmits a set of digitally coded ephemeris data that completely defines the precise orbit of the satellite. The ephemeris data indicates where the satellite is at any given time, and its location may be specified in terms of the satellite ground track in precise latitude and longitude measurements. The information in the ephemeris data is coded and transmitted from the satellite providing an accurate indication of the exact position of the satellite above the earth at any given time.
Although atomic clocks are very precise with a stability of about 1 to 2 parts in 1013 over a period of one day, a slight error (generally known as clock drift) may occur in the clocks over time resulting in satellite clock errors of about 8.64 to 17.28 ns per day with corresponding range errors of 2.59 to 5.18 meters. In order to compensate for the error, the accuracy of the satellite atomic clocks are continuously monitored from ground stations in the GPS control system and any detected errors and drift in the clock of the satellites may be calculated and transmitted by the satellites as part of a navigation message in the form of three coefficients of a second-degree polynomial.
In the case of GPS, there is nominally a constellation of 24 operational satellites above the Earth. Each satellite has individual PN codes, a nearly circular orbit with an inclination of 55° to the equator with a height of 10,898 nautical miles (20,200 kilometers) above Earth and an orbital period of approximately 12 hours. Each GPS satellite transmits a microwave radio signal composed of two carrier frequencies modulated by two digital codes and a navigation messages. The two carrier frequencies are referred to as the “L1” and “L2” carriers and are transmitted at 1,572.42 megahertz (MHz) and 1,227.60 MHz, respectively. The two GPS codes are called the coarse acquisition (C/A-code) and precision (P-code). Each code consists of a stream of binary digits, zeros and ones, known as bits or “chips.” Both the C/A-code and P-code are generally referred to as a PN code because they look like random noise-like signals. Presently, the C/A-code is modulated only on the L1 carrier while the P-code is modulated on both L1 and L2 carriers.
The C/A-code has a chipping rate of 1.023 MHz because it is a stream of 1,023 binary digits that repeats itself every millisecond. Each satellite is assigned a unique C/A-code, which enables a GPS receiver to identify which satellite is transmitting a particular code. The C/A-code range measurement is relatively less precise when compared to the P-code but it is also less complex and available to all users. The P-code is mostly limited in use to the United States government and military.
Each satellite also transmits a GPS navigation message that is a data stream added to both the L1 and L2 carriers as binary bi-phase modulation at 50 kilo-bits per second (kbps). The navigation message contains, along with other information, the coordinates of the GPS satellites as a function of time, the satellite health status, the satellite clock corrections, the satellite almanac, and atmospheric data. Each satellite transmits its own navigation message with information on the other satellites, such as the approximate location and health status.
By receiving these radio signals emitted from the satellites, a GPS receiver may calculate its distance from the satellite by determining how long it took the GPS receiver to receive the signal transmitted from the satellite. For example, a GPS receiver could calculate its two-dimensional position (longitude and latitude or X and Y) by determining its distance from three satellites. Similarly, the GPS receiver could calculate its three-dimensional position (longitude, latitude and altitude or X, Y and Z) by measuring its distance from four satellites.
Unfortunately, this approach assumes that the distances measured from the GPS receiver to the satellites are very accurate and there is no bias error. In practice, however, the distance measured between the GPS receiver and each satellite typically has a constant unknown bias, because the GPS receiver clock (GPS-CLK) is usually different from the GPS satellite clocks. In order to resolve this bias error one more satellite transmission is typically needed to calculate the location of the GPS receiver.
Generally, to receive the signals transmitted by the satellites, the GPS-CLK of the GPS receiver should be synchronized with that of the GPS satellites. Any errors in the synchronization between the clocks will cause inaccuracies the measurement of the location of the GPS receiver. Atomic clocks, like those found in the GPS satellites, are very expensive typically costing a few thousand dollars for a Rubidium clock and a few tens of thousands of dollars for a Cesium clock. They are therefore not practical for use in typical consumer GPS receivers. Inexpensive, less accurate clocks, such as crystal clocks, are generally utilized in GPS receivers as GPS-CLKs. However, unless the inaccuracy of the GPS-CLK is determined and corrected for, synchronization with that of the atomic clocks of the satellites will be partially off and the resulting distance measurement calculated by the GPS receiver will be partially inaccurate. Thus, the error of the GPS-CLK is yet another unknown variable that must be determined to accurately determine the location of the GPS receiver.
Besides accuracy, another problem associated with the error of the GPS-CLK relative to the GPS satellite clocks is the resulting acquisition time for the GPS receiver commonly known as the time to first fix (TTFF). For many applications, such as E911, a GPS receiver must be able to provide a position solution in a short period of time after the GPS receiver is powered on. Unfortunately, the GPS-CLK can have large frequency drift during the first couple minutes after being powered on. The large frequency drift can cause significant degradation on TTFF performance and may even result in lack of navigation fix in weak signal environments.
In addition to the frequency drift in the GPS-CLK, there are a number of other factors that can affect TTFF performance. Although there are a large number of GPS satellites positioned above the earth's atmosphere, it is not always possible for a GPS receiver to receive accurate transmissions from the required number of GPS satellites necessary to calculate the position of the GPS receiver. Any number of problems may prevent a GPS receiver from receiving the necessary number of signals, or from receiving accurate signals because of transmission or receiver errors. These problems can result in high TTFF times.
For example, a GPS receiver may not be able to receive the necessary number of GPS transmissions due to physical obstructions in the atmosphere or on the earth. Alternatively, even though a GPS receiver may be able to receive the necessary signals, the signal could be inaccurate due to any of the following: (i) error in the satellite clock; (ii) error in the receiver clock; (iii) error in computed satellite position; (iv) atmospheric errors caused by the ionosphere or the troposphere; (v) multipath errors caused by the receipt of reflective signals; (vi) receiver measuring errors and/or (vii) selective errors, or man made errors. These inaccuracies could lead to TTFF times that may be over thirty seconds because the GPS receiver needs to obtain the ephemeris data from the GPS system itself, and the GPS receiver typically needs a strong signal to acquire the ephemeris data reliably.
Since the inception of GPS, methods have been, and are still being, developed to reduce errors and to enhance the accuracy of the GPS systems. Further, many different methods are being implemented to provide alternative means for providing the GPS receiver with information concerning unknown variables or inaccuracies in the system such that it is not always required for the system to receive satellite transmission signals from all the satellites or to receive accurate transmission data.
One technique that has been introduced to assist with overcoming errors in the GPS system is differential GPS. With differential GPS, a receiver having a known location receives the GPS signals and calculates its position from the received signals. The calculated position is then compared to the actual known position of the receiver. The differential between the known position and the calculated position can then be used to calculate errors in the transmission signals. These errors can then be transmitted to receivers in unknown locations (“mobile receivers”) and used by the mobile receivers to compute their own location with better accuracy.
Differential GPS is typically used to correct for errors other than receiver or multipath errors. However, in a similar manner as differential GPS, correction data may be sent to the GPS receiver to correct for receiver errors. For example, one method that has been used to correct for errors in the GPS-CLK has been to send a precision carrier frequency signal to the GPS receiver from a second source, such as a base station. In this application, the GPS receiver is designed to receive the precision carrier frequency signal and then calibrate and/or lock the GPS-CLK to that of the precision carrier frequency. This method, however, typically involves the use of additional complicated circuitry that first locks and/or calibrates the GPS-CLK to the precision carrier frequency and then maintains dynamic synchronization between the GPS-CLK and precision carrier frequency.
A need therefore exists for a method of compensating for errors created by the drift of the GPS-CLK to increase positional accuracy and improve TTFF in a dynamic manner without utilizing additional complex circuitry and without significantly modifying the existing hardware.